SPJOB
SP_JOB

Syntax: SPJOB jobname,priority        
        (Toolkit II, TinyToolkit pre v1.10 and THOR only)
    or: SPJOB jobnr,tag,priority
        (Toolkit II and THOR only)
    or: SPJOB jobID,priority
    or: SPJOB jobnr,priority
        (TinyToolkit pre v1.10)
   and: SP_JOB jobname,priority
    or: SP_JOB jobnr, priority
Location: Toolkit II, THOR XVI, TinyToolkit, BTool (SPJOB)
          TinyToolkit v1.10+ (SP_JOB)

The specified job (described by either its jobname, its job number and tag, or its job identification number) is set to the given priority (which should be in the range 0 to 127 to maintain compatability with Minerva).

The TinyToolkit version was renamed because of a slight syntax incompatability.

MINERVA NOTES:
Although on other ROMs, a priority higher than 127 can be assigned to a job, on Minerva, the permitted priority range is actually -128...127 (if a priority is stated to be higher than 127, you must subtract the difference between this number and 256 from 0 to get the negative priority). 

The idea behind these negative priorities is that they are for 'background tasks' which will only run when no tasks with a positive priority are running. However, the effect is slightly more complex because these negative priorities are split into eight levels, each of which can have jobs running with priorities equivalent to -1 to -15. 

A job in one level will not run whilst a job in a higher level is running, however within each level each job will get a different amount of processor time depending on their priorities {a job with a lower priority (eg. -15) will get more processing time than a job with a higher priority (eg. -1)}.

CROSS-REFERENCE:
SJOB suspends a job, REL_JOB releases it.
RJOB and KJOB remove a specific job, KILL and KJOBS remove all jobs except the main SuperBASIC interpreter. 
See also PRIO, PRIORITISE.
